package work.thread_eg.concurrent.synchronized_eg;

/**
 * @author shenminglong@kedacom.com
 * @date 2022-01-11
 */
public class SynchronizedTest03 {

    public static void main(String[] args) {
        System.out.println("使用关键字synchronized");
        // 两个对象 两个线程 每个线程拥有对应的SyncThread对象的锁 互不干预 相当于两把锁
        // 所以synchronized加不加关系不大 一样的结果 不如不加
        // 但是两个SyncThread对象共享变量count 所以count的值会一直加到9 但是方法的执行会并行的
        SyncThread syncThread1 = new SyncThread();
        SyncThread syncThread2 = new SyncThread();
        Thread thread1 = new Thread(syncThread1, "SyncThread1");
        Thread thread2 = new Thread(syncThread2, "SyncThread2");
        thread1.start();
        thread2.start();
    }
}
